package cn.detu.ln.service;

import cn.detu.ln.entity.Grade;
import cn.detu.ln.utils.RestUtil;

/**
 * @author :ln
 * @version : 1.0
 * @Project : education_backend
 * @Package : cn.detu.ln.service
 * @ClassName : GradeService.java
 * @createTime : 2023/3/31 10:51
 * @Description :
 */
public interface GradeService {
    RestUtil selectAll();
    // 学生查看他自己学号的所有成绩
    RestUtil queryGradeByStuNumPage(Integer current, Integer rows, String search);
    // 学年 + 学号实现模糊查询
    RestUtil queryGradeByGradeYearPage(Integer current, Integer rows, Long stuNum,String search);
    // 课程性质 + 学号实现模糊查询
    RestUtil queryGradeByCouNaturePage(Integer current, Integer rows, Long stuNum,String search);


    RestUtil gradeDelete(Integer gradeId);

    RestUtil gradeUpdate(Grade grade);
    // 根据课程名称+学号实现查询
    RestUtil gradeCourseStu(Integer current,Integer rows,String search,Long stuNum);

    RestUtil gradeInsert(Grade grade);
    // 根据教师所带的课程的课程名称查看学生成绩
    RestUtil queryGradeByTeaCourse(Integer current,Integer rows,String search);
    // 课程名称 + 学号实现模糊查询
    RestUtil queryGradeByPage(Integer current, Integer rows, Long stuNum, String search);
    // 通过课程couId查询是否有成绩
    RestUtil judgeGradeByCouId(Integer couId);
    // 管理员通过课程名称实现查询
    RestUtil selectGradeCouNameByAdmin(Integer current, Integer rows, String search);
    // 管理员通过课程性质实现查询
    RestUtil selectGradeCouNatureByAdmin(Integer current, Integer rows, String search);

}
